//
//  OPZJFatherTableViewCell.m
//  NewWorld
//
//  Created by 曾静 on 16/4/29.
//  Copyright © 2016年 itcast. All rights reserved.
//

#import "OPZJFatherTableViewCell.h"

@implementation OPZJFatherTableViewCell

//根据字符串 返回对应的类型
+ (UITableViewCellStyle)cellTypeName:(NSString *)typeName
{
    if ([typeName isEqualToString:@"UITableViewCellStyleValue1"]) {
        
        return UITableViewCellStyleValue1;
        
    }else if ([typeName isEqualToString:@"UITableViewCellStyleValue2"]){
        
        return UITableViewCellStyleValue2;
    }else if ([typeName isEqualToString:@"UITableViewCellStyleSubtitle"]){
        
        return UITableViewCellStyleSubtitle;
    }else{
        
        return UITableViewCellStyleDefault;
        
    }
    
}
//返回cell
+ (instancetype)fatherCellWithTableView:(UITableView *)tableView withItems:(NSDictionary *)items
{
    
    //获取cell的类型的 字符串
    NSString *cellType = items[@"cellType"];
    
    //    static NSString *ID = @"setCell";
    
    
    OPZJFatherTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellType];
    if (!cell) {
        
        cell = [[OPZJFatherTableViewCell alloc]initWithStyle:[self cellTypeName:cellType] reuseIdentifier:cellType];
    }
    
    return cell;
    
}
//cell赋值
- (void)setItems:(NSDictionary *)items

{
    _items = items;
    
    self.textLabel.text = items[@"title"];
    
    if(items[@"icon"] && [items[@"icon"] length] > 0){
        
        self.imageView.image = [UIImage imageNamed:items[@"icon"]];
        
    }
    
    //解析子标题
    self.detailTextLabel.text = items[@"subTitle"];
    
    
    //1.获取小附件 的字符串类型
    NSString *accessoryType = items[@"accessoryType"];
    
    //2.根据字符串的名字 生成对应的类
    Class targetClass = NSClassFromString(accessoryType);
    
    //3.根据这个类生成对象
    id targetObj = [[targetClass alloc]init];
    
    //4.判断类型, 添加图片
    if([targetObj isKindOfClass:[UIImageView class]]){
        
        UIImageView *imageView = (UIImageView *)targetObj;
        imageView.image = [UIImage imageNamed:items[@"accessoryIcon"]];
        
        //根据传入的内容 大小设置自身的大小
        [imageView sizeToFit];
    }
    
       //5.赋值
    self.accessoryView = targetObj;
    
    
    
}



@end
